package main.new_2025;

/**
 * @Description:
 * todo 2264. 字符串中最大的 3 位相同数字
 * 给你一个字符串 num ，表示一个大整数。如果一个整数满足下述所有条件，则认为该整数是一个 优质整数 ：
 * 该整数是 num 的一个长度为 3 的 子字符串 。
 * 该整数由唯一一个数字重复 3 次组成。
 * 以字符串形式返回 最大的优质整数 。如果不存在满足要求的整数，则返回一个空字符串 "" 。
 * todo 3297. 统计重新排列后包含另一个字符串的子字符串数目 I
 * 给你两个字符串 word1 和 word2 。如果一个字符串 x 重新排列后，word2 是重排字符串的前缀，那么我们称字符串 x 是 合法的 。
 * 请你返回 word1 中 合法 子字符串 的数目。
 *
 * @Author: Take-off
 * @Date: 1:00 PM 2024/2/27
 * @Param:
 * @return:
 **/
public class Solution0109 {

    //2264.字符串中最大的 3 位相同数字
    public String largestGoodInteger(String num) {
        boolean flag = false;
        int maxInt = 0;
        StringBuilder sb = new StringBuilder();
        for (int i =0;i<num.length()-1;i++){
            char a = num.charAt(i);
            for (int j = i+1;j<num.length();j++){
                char b = num.charAt(j);
                if (a == b){
                    sb.append(b);
                    if (j == num.length() - 1) {
                        if (sb.length() >= 2){
                            flag = true;
                            maxInt = Math.max(maxInt,Character.getNumericValue(a));
                            i = j-1;
                            break;
                        }
                    }
                }else {
                    if (sb.length() >= 2){
                        flag = true;
                        maxInt = Math.max(maxInt,Character.getNumericValue(a));
                    }
                    sb = new StringBuilder();
                    i = j-1;
                    break;
                }
            }
        }
        if (flag){
            return maxInt + "" + maxInt + maxInt;
        }else {
            return "";
        }

    }

    public static void main(String[] args) {
        Solution0109 test = new Solution0109();
        test.largestGoodInteger("222");
    }
}